Package-level declarations

Types

Link copied to clipboard
sealed class CpqProposalStatus
Link copied to clipboard
Link copied to clipboard

Result type for dashboard job operations.

Link copied to clipboard

Result type for getting job labor codes.

Link copied to clipboard
sealed class GetJobResult

Result type for getting a single job.

Link copied to clipboard
sealed class GetJobsResult

Result type for getting paginated jobs list. Contains pagination metadata and partial data indicator.

Link copied to clipboard
sealed class GetJobStatsResult

Result type for job statistics operations.

Link copied to clipboard

Result type for getting job statuses by category.

Link copied to clipboard
sealed class JobsResult

Result type for getting multiple jobs.

Link copied to clipboard

Result type for updating job cover image.

Link copied to clipboard

Result type for updating job status.

Link copied to clipboard

Represents update events for dashboard jobs.

Link copied to clipboard
Link copied to clipboard
data class ZyncFilterByCustomField(val label: String, val value: String)
Link copied to clipboard
data class ZyncFilterDateRange(val fromDate: String, val toDate: String, val type: ZyncFilterDateRangeType)

Data class representing a date range filter for job queries. Dates should be in ISO format (e.g., "2023-12-25" or "2023-12-25T10:00:00Z").

Link copied to clipboard
data class ZyncFilterModule(val uid: String, val label: String)

Data class representing a module filter for job queries. Used for filtering by customer, organization, property, team, user, etc.

Link copied to clipboard
data class ZyncJob(val jobUid: String, val jobTitle: String, val prefix: String?, val workOrderNumber: Int, val scheduledStartTime: String?, val scheduledEndTime: String?, val dueDate: String?, val jobPriority: ZyncJobPriority, val jobCategory: ZyncJobCategory?, val jobStatus: ZyncJobCurrentStatus?, val statusHistory: List<ZyncJobStatusHistory>?, val isRecurringJob: Boolean, val customer: ZyncJobCustomer?, val organization: ZyncOrganization?, val serviceAddress: ZyncAddress?, val billingAddress: ZyncAddress?, val assignedUsers: List<ZyncJobAssignedUser>?, val timezone: String?, val jobTotal: Double?, val coverImage: ZyncCoverImage?)
Link copied to clipboard
data class ZyncJobAsset(val asset: ZyncAssetDetail, val remarks: String?, val submittedFormUid: String?)
Link copied to clipboard
data class ZyncJobAssignedUser(val user: ZyncUser, val team: ZyncTeam, val acceptanceStatus: String?, val isPrimary: Boolean)
Link copied to clipboard
data class ZyncJobCategory(val uid: String, val name: String, val description: String?, val slaDuration: ZyncSlaDuration?, val color: String?, val timeLogConfig: ZyncJobCategoryTimeLogConfig?)

Domain model representing a Job Category in the Zuper system.

Link copied to clipboard
data class ZyncJobCategoryTimeLogConfig(val isJobTimerEnabled: Boolean, val isBreakTimerEnabled: Boolean, val isTravelTimer: Boolean)
Link copied to clipboard
data class ZyncJobCompact(val jobUid: String, val jobTitle: String, val workOrderNumber: Int, val prefix: String?, val jobPriority: ZyncJobPriority, val jobStatus: ZyncJobCurrentStatus?, val scheduledStartTime: String?, val scheduledEndTime: String?, val dueDate: String?, val jobTimezone: String?, val isRecurringJob: Boolean, val assignedUsers: List<ZyncJobAssignedUser>?, val customer: ZyncJobCustomer?, val organization: ZyncOrganization?, val jobCategory: ZyncJobCategory?, val serviceAddress: ZyncAddress?, val billingAddress: ZyncAddress?, val jobTotal: Double?, val coverImage: ZyncCoverImage?)

Compact job model optimized for list views and lightweight operations. Contains essential job information without heavy nested objects.

Link copied to clipboard
data class ZyncJobCurrentStatus(val statusUid: String, val statusName: String, val statusType: ZyncJobStatusType, val statusColor: String?)
Link copied to clipboard
data class ZyncJobCustomer(val uid: String, val firstName: String, val lastName: String?, val email: String?, val contactNo: ZyncContactNumber?, val companyName: String?, val timezone: String?, val isActive: Boolean)
Link copied to clipboard
data class ZyncJobDetail(val workOrderNumber: Int, val jobCategory: ZyncJobCategory?, val jobUid: String, val jobTitle: String, val jobPriority: ZyncJobPriority, val jobTimezone: String?, val scheduledStartTime: String?, val scheduledEndTime: String?, val dueDate: String?, val customer: ZyncCustomer?, val isRecurringJob: Boolean, val billingAddress: ZyncAddress?, val serviceAddress: ZyncAddress?, val statusHistory: List<ZyncJobStatusHistory>?, val jobTags: List<String>?, val assignedUsers: List<ZyncJobAssignedUser>?, val jobStatus: ZyncJobCurrentStatus?, val products: List<ZyncJobProduct>?, val customFields: List<ZyncFormField>, val jobDescription: String?, val parentJob: ZyncJob?, val prefix: String?, val contract: ZyncContract?, val assets: List<ZyncJobAsset>?, val ppm: ZyncPpm?, val organization: ZyncOrganization?, val property: ZyncProperty?, val hasChildJobs: Boolean, val route: ZyncRoute?, val skills: List<ZyncSkill>?, val serviceTask: ZyncJobDetailServiceTask?, val attachments: List<ZyncAttachment>, val jobRequest: ZyncJobRequest?, val secondaryContacts: List<ZyncJobSecondaryContact>, val hideToFe: Boolean = false, val hideToUsers: List<String> = emptyList(), val priceList: ZyncPriceList?, val associatedProject: ZyncAssociatedProject?, val purchaseOrder: ZyncJobPurchaseOrder?, val leadSource: ZyncLeadSource?, val waitingOnMR: Boolean, val waitingOnPO: Boolean, val jobTotal: Double?, val coverImage: ZyncCoverImage?, val streamChannelCid: String?) : Keyed<String>

Domain model representing a Job in the Zuper system. This is the primary model used throughout the SDK for job operations.

Link copied to clipboard
data class ZyncJobLaborCode(val laborCodeUid: String, val displayOrder: Int?, val laborCodeName: String, val isActive: Boolean)

Represents a job labor code in the Zync SDK. Labor codes are used to categorize and track labor costs for jobs.

Link copied to clipboard
Link copied to clipboard
data class ZyncJobProduct(val lineItemUid: String?, val productId: String?, val productUid: String?, val productDescription: String?, val brand: String?, val specification: String?, val productName: String, val prefix: String?, val productImage: String?, val quantity: Double?, val currency: String?, val price: Double?, val purchasePrice: Double?, val productDetail: ZyncProductDetail?, val locationUid: String?, val locationName: String?, val productType: ZyncProductType, val groupId: String?, val uom: String?, val serialNumbers: List<String>?, val markup: ZyncProductMarkup?, val unitPricePreMarkup: Double?, val category: ZyncProductCategory?, val projectLineItemUid: String?, val bundlePricingLevel: ZyncBundlePricingLevel, val bundleItems: List<ZyncAssociatedBundleItem>, val isBillable: Boolean, val discount: Double?, val discountType: String?, val lineItemType: String)
Link copied to clipboard
data class ZyncJobPurchaseOrder(val purchaseOrderUids: List<String>, val latestPurchaseOrderStatus: ZyncPurchaseOrderStatus, val latestPurchaseOrderUid: String)
Link copied to clipboard
data class ZyncJobRequest(val requestUid: String, val title: String, val description: String?, val requestStatus: ZyncRequestStatus?, val requestId: Int)
Link copied to clipboard
data class ZyncJobSecondaryContact(val customerUid: String, val firstName: String, val lastName: String?, val email: String?, val contactNo: ZyncContactNumber?, val isActive: Boolean)
Link copied to clipboard
data class ZyncJobSortAndFilter(val sortType: ZyncSortType = ZyncSortType.DEFAULT, val sortBy: ZyncJobSortBy = ZyncJobSortBy.DEFAULT, val keyword: String? = null, val categories: List<String>? = null, val statuses: List<String>? = null, val priority: ZyncJobPriority? = null, val scheduleDateRange: ZyncFilterDateRange? = null, val dueDateRange: ZyncFilterDateRange? = null, val customer: ZyncFilterModule? = null, val organization: ZyncFilterModule? = null, val property: ZyncFilterModule? = null, val parentJob: ZyncFilterModule? = null, val scheduleStatus: ZyncJobFilterScheduleStatus? = null, val assignmentStatus: ZyncJobFilterAssignmentStatus? = null, val team: ZyncFilterModule? = null, val assignedEmployee: ZyncFilterModule? = null, val isJobDelayed: Boolean? = null, val isRecurrentJob: Boolean? = null, val statusType: List<ZyncJobStatusType>? = null, val createdDateRange: ZyncFilterDateRange? = null, val createdByUser: ZyncFilterModule? = null, val assignedToRoute: Boolean? = null, val customerFeedback: ZyncJobCustomerFeedback? = null, val tags: List<String>? = null, val customFields: ZyncFilterByCustomField? = null, val createdAt: String? = null, val contractUid: String? = null, val asset: String? = null, val routeId: String? = null, val jobUid: List<String>? = null, val recurrenceJobUid: String? = null, val request: ZyncFilterModule? = null, val project: ZyncFilterModule? = null, val leadSource: ZyncFilterModule? = null)

Comprehensive sorting and filtering options for job queries. Provides a clean API for complex job filtering and sorting operations.

Link copied to clipboard
Link copied to clipboard
data class ZyncJobStats(val totalJobs: Int, val completedJobs: Int, val closedJobs: Int, val incompleteJobs: Int, val onProgress: Int, val yetToStart: Int, val delayed: Int)

Represents job statistics for a given date range.

Link copied to clipboard
data class ZyncJobStatus(val statusUid: String, val statusName: String, val statusType: ZyncJobStatusType, val statusColor: String?, val remarksType: String?, val requireCustomerSignature: Boolean?, val requireCustomerFeedback: Boolean?, val previewTemplateWhileSigning: Boolean?, val requireFacialAuthentication: Boolean?, val requireGeoFencing: Boolean?, val geoFenceRadius: Double?, val enabledForFieldExecutive: Boolean?, val enabledForManager: Boolean?, val allowRemarks: Boolean?, val remarksValues: List<String>?, val hasParent: Boolean?, val parentStatuses: List<String>?, val captureGeoCords: Boolean?, val prefillChecklist: Boolean?, val restrictToAccessRole: Boolean?, val enabledToAccessRoles: List<String>?, val checklist: List<ZyncMasterFormField>?, val checklistViewType: String?)
Link copied to clipboard
data class ZyncJobStatusAssociatedProduct(val lineItemUid: String? = null, val productUid: String? = null, val productId: String? = null, val name: String, val prefix: String? = null, val quantity: Double? = null, val image: String? = null, val uom: String? = null, val price: Double? = null, val locationUid: String? = null, val locationName: String? = null, val productType: String? = null, val isBillable: Boolean? = null)

Associated product that comes with a main product.

Link copied to clipboard
data class ZyncJobStatusChecklistAsset(val assetUid: String, val assetName: String, val assetCode: String? = null, val assetSerialNumber: String? = null, val category: String? = null, val warrantyExpiryDate: String? = null, val isActive: Boolean? = null, val assetStatus: String? = null, val assetImage: String? = null)

Asset information within checklist items for lookup fields.

Link copied to clipboard
data class ZyncJobStatusChecklistItem(val question: String, val answer: String? = null, val hideToFe: Boolean, val type: String, val module: String? = null, val metaData: ZyncJobStatusChecklistMetadata? = null, val readOnly: Boolean, val hideField: Boolean)

Checklist item for job status updates with comprehensive metadata support.

Link copied to clipboard
data class ZyncJobStatusChecklistMetadata(val signatureName: String? = null, val description: String? = null, val products: List<ZyncJobStatusChecklistProduct>? = null, val users: List<ZyncJobStatusChecklistUser>? = null, val assets: List<ZyncJobStatusChecklistAsset>? = null, val columnMetaData: List<ZyncJobStatusColumnMetadata>? = null, val rowMetaData: List<List<ZyncJobStatusRowMetadata>>? = null)

Metadata for checklist items supporting signatures, products, users, assets, and custom fields.

Link copied to clipboard
data class ZyncJobStatusChecklistProduct(val image: String? = null, val name: String, val prefix: String? = null, val productId: String? = null, val productUid: String? = null, val quantity: Double? = null, val price: Double? = null, val uom: String? = null, val locationUid: String? = null, val locationName: String? = null, val productType: String? = null, val bundlePricingLevel: String? = null, val isBillable: Boolean? = null, val lineItemUid: String? = null, val associatedProducts: List<ZyncJobStatusAssociatedProduct>? = null)

Product information within checklist items.

Link copied to clipboard
data class ZyncJobStatusChecklistUser(val userUid: String, val profilePicture: String? = null, val firstName: String, val lastName: String? = null, val email: String, val empCode: String? = null, val designation: String? = null, val role: ZyncJobStatusChecklistUserRole? = null, val isActive: Boolean)

User information within checklist items for lookup fields.

Link copied to clipboard
data class ZyncJobStatusChecklistUserRole(val roleKey: String? = null, val roleName: String? = null, val roleUid: String? = null)

User role information for checklist user lookups.

Link copied to clipboard
data class ZyncJobStatusColumnMetadata(val fieldName: String, val fieldType: String? = null)

Column metadata for table-like checklist structures.

Link copied to clipboard
data class ZyncJobStatusFeedback(val rating: String, val message: String? = null)

Feedback model for job status updates. Contains rating and optional message from the user.

Link copied to clipboard
data class ZyncJobStatusHistory(val localStatusUid: String, val statusUid: String, val statusHistoryUid: String?, val statusName: String, val statusType: ZyncJobStatusType, val statusColor: String?, val remarks: String?, val remarksFreeText: String?, val createdAt: String?, val updatedAt: String?, val customerSignature: String?, val customerSignatureName: String?, val doneBy: ZyncUser?, val checkList: List<ZyncFormField>?, val isOffline: Boolean, val latitude: Double?, val longitude: Double?)
Link copied to clipboard
data class ZyncJobStatusRowMetadata(val fieldName: String, val fieldValue: String? = null)

Row data for table-like checklist structures.

Link copied to clipboard
Link copied to clipboard
data class ZyncJobStatusUpdateContent(val jobUid: String, val statusUid: String, val statusName: String, val statusType: String, val statusHistoryUid: String?, val remarks: String?, val remarksFreeText: String?, val customerSignature: String?, val customerSignatureName: String?, val facialAuthStatus: String?, val facialAuthPicture: String?, val geoCoordinates: List<Double>?, val eta: String?, val etaMins: Int?, val feedback: ZyncJobStatusFeedback?, val checklist: List<ZyncJobStatusChecklistItem>?, val cpqTemplateUid: String?)

Content model for updating job status with offline-first support.

Link copied to clipboard
sealed class ZyncJobUpdateEvent
Link copied to clipboard
data class ZyncLaborCodesSortAndFilter(val sortType: ZyncSortType = ZyncSortType.Descending, val sortBy: ZyncLaborCodesSortBy = ZyncLaborCodesSortBy.CreatedAt, val keyword: String? = null, val isActive: Boolean? = null)

Sorting and filtering options for labor codes queries.

Link copied to clipboard

Sorting options for labor codes queries.

Link copied to clipboard
data class ZyncTimelog(val timelogUid: String, val jobUid: String, val projectUid: String?, val user: ZyncUser?, val type: String, val checkedTime: String, val latitude: String?, val longitude: String?, val remarks: String?, val timelogType: String?, val reasonCode: String?, val laborCodeUid: String?, val isOffline: Boolean, val createdAt: String?, val updatedAt: String?, val syncedAt: String?)